Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync with upstream 1.8.0 #234

Merged
merged 44 commits into from
Jul 29, 2024
Merged

Sync with upstream 1.8.0 #234

merged 44 commits into from
Jul 29, 2024

Conversation

JaylinYu
Copy link
Member

No description provided.

shikokuchuo and others added 30 commits July 29, 2024 12:20
Add the missing stub function implementation for `nng_tls_config_hold`.
Fixes an error when loading the library and expecting to have this
symbol available.

The availability of the symbol can be checked with nm:
```
nm -D cmake-build-release/libnng.so.1.7.3  | grep nng_tls_config_hold
```
The realtime clock is not (yet) exposed for user applications, but it
is used for logging timestamps accurately.

Signed-off-by: jaylin <[email protected]>
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.19.0 to 0.23.0.
- [Commits](golang/net@v0.19.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
The supplemental/util/platform.h is kind of a pain, so we move
move the prototypes for commonly used functions out of there, into
nng.h proper.

Signed-off-by: jaylin <[email protected]>
This also deprecates supplemental/util/platform.h.

Signed-off-by: jaylin <[email protected]>
With specific message sizes, we the shuffle of data for msg insert
can calculate the wrong value, leading to heap corruption.
This includes a stress test for msg insert to hopefully exercise
every reasonable edge case.

Signed-off-by: jaylin <[email protected]>
when an `aio` has no `a_cancel_fn` and the task is in `task_prep` abort it on `nni_aio_stop` call
…get.

If you want to build on Windows use a toolchain that supports modern APIs.
This means, for Microsoft, UCRT (Universal C Runtime), which is supported
by default on modern Visual Studio.  MinGW users may have to go out of their
way to enable it.  (New -D_UCRT flag or something.)

The supported toolchain for building on Windows is Visual Studio.  Use of
other tool chains is not officially supported or guaranteed to work.  YMMV.
When closing pipes, we defer them to be reaped, but also leave
them in the match list where they might be picked up by ep_match,
or leak.  It's best to reap these proactively and ensure that they
are not allowed to life longer once they have errored during the
negotiation phase.
We use overlapped I/O, so we don't need a separate hEvent.
The logic with overlapped structures was fragile as it used
overlapped ios for the connections rather than a single common
one for the listener.  This changes it to be more like POSIX, and
robust against this error.
This seems to alleviate the use after free crashes, although it
does not seem like it should.  Current theory is that this closes
the handle ensuring that it is unregistered from the I/O subsystem,
thus preventing callbacks from firing and referring to objects that
have been freed.
…RT_ZEROTIER is enabled.

It seems that there are typo in the struct type naming. And the wrong function name in `nni_sp_zt_register` that will cause link error.
…UDP. (#1838)

This exposes the UDP methods as nng_ methods, and adds support for Multicast Membership,
which is useful in a variety of situations.

No documentation is provided, and applications should consider thios API experimental.
This also adds an SP layer transport test for TLS, based on the TCP
test but with some additions; this test does not cover all the edge
cases for TLS, but it does at least show how to use it.

Signed-off-by: jaylin <[email protected]>
gdamore and others added 10 commits July 29, 2024 12:42
This is older than any currently supported operating system ships
by default, and it allows us to use message(NOTICE) instead of
having everything be a warning.
Also, while here, prepare for PSK support to be conditional -- it is not
necessarily on by default in all future engines (e.g. WolfSSL.)
This is in preparation for the wolfSSL integration.

Signed-off-by: jaylin <[email protected]>
Also, converted to Markdown, and provided revised information about test.

Signed-off-by: jaylin <[email protected]>
@JaylinYu JaylinYu requested review from RanMaoyi, wanghaEMQ and a team July 29, 2024 04:48
@JaylinYu
Copy link
Member Author

we need to find a way to make nng_log compatible with ours

@JaylinYu JaylinYu merged commit 2c56823 into main Jul 29, 2024
13 of 14 checks passed
@JaylinYu JaylinYu deleted the wangha/dev3 branch July 29, 2024 07:37
Copy link
Member

@wanghaEMQ wanghaEMQ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants